iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 8
1
自我挑戰組

Go從新學系列 第 8

[DAY 8]在GO中控制結構

  • 分享至 

  • xImage
  •  

大部分的程式如果沒有特定指令,大多由上到下執行

但是我們可以用控制結構的方法改變程式運行的方向

我們先從最簡單的IF開始學起

  • IF

IF是最基礎的判斷句

如果cond為真,即執行if區程式碼

若為其他狀況(else)即執行else內部程式碼

package main

import "fmt"

func main() {
	var a,b = 1,1
	var cond = (a+b==3)
	if cond{
		fmt.Println("true")
	}else{
		fmt.Println("false")
	}
}

設定a,b為1,1

cond是 a+b = 3

如果cond為真

則印出true若非則印false

執行結果

false

此外,也可以用else if 做為進入else前的另一個判斷句

if scenario_a {
	//若scenario是true則執行
} else if scenario_b {
	//若scenario_b是true則執行
} else {
	//若scenario_a,scenario_b接不是true則執行
}
  • switch

switch A {
case 1:
	// 執行block_1
case 2:
	// 執行block_2
	fallthrough
case 3:
	// 執行block_3
case 4, 5:
	// 執行block_4_5
default:
	// 執行default
}

在上面的範例中

switch的用法用於判斷A屬於哪個狀況並執行其區塊程式碼

若情況為1則執行block_1

情況為2則執行block_2並且因為有fallthrough所以會連帶block_3一起執行,case_3因為沒有fallthrough所以不會繼續網block_4_5執行

情況3則執行block_3,要注意的是這裡並不會執行block_2

情況4或5都會執行block_4_5,GO允許switch擁有兩個以上的值

皆不是的狀況下則執行default
default類似else,可以省略


上一篇
[DAY 7] GO 的 運算子(2)
下一篇
[DAY 9]GO 的 迴圈
系列文
Go從新學26
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言